Method and apparatus for analyzing financial data

ABSTRACT

A system analyzes multiple financial accounts having a common account holder and identifies a particular attribute, such as interest rate, associated with each of the multiple financial accounts. The system then makes a determination regarding whether an adjustment of funds among the multiple financial accounts would benefit the account holder. If the adjustment of funds would benefit the account holder, then recommending the adjustment of funds to the account holder and offering to perform the recommended adjustment of funds. The system executes the adjustment of funds if the account holder accepts the offer to perform the recommended adjustment of funds.

TECHNICAL FIELD

The present invention relates to the analysis of financial data and, more particularly, to the analysis of multiple financial accounts and other market data to determine whether the allocation of assets and/or liabilities among the multiple financial accounts is optimal.

BACKGROUND

Customers of financial institutions (both individual customers and businesses) typically maintain multiple financial accounts at one or more financial institutions. Financial institutions include, for example, banks, savings and loans, credit unions, mortgage companies, lending companies, and stock brokers. These financial accounts include asset accounts (such as savings accounts, checking accounts, certificates of deposit (CDs), mutual funds, bonds, and equities) and debt accounts (such as credit card accounts, mortgage accounts, home equity loans, overdraft protection, and other types of loans).

In many situations, a user's asset accounts may not be earning the best available interest rate or the user's debt accounts my not be at the most competitive interest rate. It would be to the user's benefit to adjust the funds between different accounts to maximize the interest earned in the asset accounts and/or minimize the interest paid in the debt accounts. For example, a user may have a checking account that pays no interest, but has a high balance. A portion of the funds in the checking account could be transferred to a savings account or other asset account that pays interest on the funds in the account. Similarly, a user with a high credit card balance could save money if a portion of the credit card balance was transferred to a home equity line of credit at a lower interest rate.

Certain users do not regularly monitor the balances of their asset accounts or debt accounts. These users typically rely on the statements issued (e.g., monthly or quarterly) by the financial institution responsible for the account. Thus, these users do not typically know the balances of their various accounts. Even on the day they receive their statement from the financial institution, the status of the accounts may have changed due to other transactions that occurred after the statement was generated.

Other users track asset account and debt account balances using paper forms or registers which are reconciled against the account statements issued by the financial institutions. If the user accurately enters every financial transaction and successfully reconciles every statement from the financial institution, then the paper forms or registers will reflect the current account balances of the user's accounts. However, to determine whether the user's assets or debts could be adjusted for the benefit of the user, the user would need to manually review the various account balances and interest rates, and determine the amount of funds to be transferred between the different accounts. This process can be tedious, especially to users that do not have the patience to review multiple accounts, compare balances and interest rates, and calculate the estimated savings associated with certain transactions. The user must also determine whether the time and effort required to implement the transactions is worthwhile in view of the savings that result from the transactions. For example, if the user must go to the financial institution to transfer funds which would result in an interest savings of a few dollars, the user must decide whether the transaction is worthwhile. This cost-benefit analysis is typically performed for each transaction each time the user reviews their accounts.

Certain financial software packages allow users to enter financial transactions and generate reports indicating current account balances. Example software packages include Quicken available from Intuit Inc. of Mountain View, Calif., and Microsoft Money available from Microsoft Corporation of Redmond, Wash. If all financial transactions are entered into the financial software package and each statement from a financial institution is reconciled, then the software package accurately displays the user's account balances. However, to determine whether funds should be transferred between accounts, the user is required to review multiple accounts, compare balances and interest rates, and calculate the estimated savings associated with certain transactions. Additionally, the user must perform a cost-benefit analysis for each transaction, as discussed above.

If the user does identify the funds to be transferred between different accounts, the user is then required to execute the necessary transactions. To execute these transactions, the user may need to visit one or more financial institutions and request the appropriate fund transfers. However, if one or more of the financial institutions is located in a distant town, the fund transfers may need to be processed by check or bank wire. Alternately, the user may execute some of the transactions through an online banking service, if the financial institution supports online banking. However, typical online banking services do not permit the transfer of funds between two different financial institutions. Thus, if a user wants to transfer funds, for example, from a checking account at a bank to a money market account at a stock broker, the user cannot generally execute the transfer using online banking.

Instead, the user needs to withdraw funds manually using, for example, a check and manually deposit the funds in the second account (either in person or by mail). Since the second account may place a hold on the deposit, the actual fund transfer may not occur for a week (or longer) depending on the amount of the check, the policies of the financial institutions, and any delays involved with mailing the check. A bank wire provides a faster method of transferring funds between financial institutions, but is not generally cost-effective for small transfers (e.g., transfers of less than a few thousand dollars), due to the costs associated with the bank wire. For small transfers, the costs associated with the bank wire may exceed the interest savings generated by the transfer.

Thus, the systems available today do not provide a mechanism for automatically analyzing multiple user accounts to identify fund transfers that would be favorable to the user.

The systems and methods described herein addresses these and other problems by automatically analyzing multiple user accounts, both asset accounts and debt accounts, to determine whether an adjustment of funds between accounts would benefit the account holder.

SUMMARY

The system and methods described herein perform an automated analysis of multiple user accounts to determine whether those accounts are optimized based on, for example, the best available interest rates, interest rates on the user's accounts, and the user's account balances. The analysis system makes recommendations, if necessary, to adjust account funds if the user could earn greater interest by adjusting asset accounts and/or pay less interest by adjusting debt accounts. Additionally, the analysis system may make recommendations to adjust account funds from one or more asset accounts to one or more debt accounts, or vice versa, if such a transaction is favorable to the user.

A particular embodiment analyzes multiple asset accounts having a common account holder and identifies an attribute associated with each of the multiple asset accounts. A determination is made regarding whether an adjustment of assets among the multiple asset accounts would benefit the account holder.

In one embodiment, a recommendation is generated recommending opening a new asset account if available market interest rates for similar asset accounts are better than at least one of the multiple asset accounts.

In another embodiment, the multiple asset accounts include a first asset account associated with a first financial institution and a second asset account associated with a second financial institution.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an exemplary network environment in which various servers, computing devices, and financial management systems exchange data across a network, such as the Internet.

FIG. 2 illustrates an example of the interaction between a particular pair of financial institution servers, a market information service, a client computer, and a financial management system.

FIG. 3 is a block diagram showing pertinent components of a computer in accordance with the invention.

FIG. 4 is a block diagram showing exemplary components and modules of a financial management system.

FIG. 5 is a block diagram showing exemplary components and modules of an asset analysis and recommendation module.

FIG. 6 is a block diagram showing exemplary components and modules of a debt analysis and recommendation module.

FIG. 7 is a block diagram showing exemplary components and modules of a balance sheet analysis and recommendation module.

FIG. 8 is a flow diagram illustrating a procedure for identifying financial transactions to optimize a user's asset account balances.

FIG. 9 is a flow diagram illustrating a procedure for identifying financial transactions to optimize a user's debt account balances.

FIG. 10 is a flow diagram illustrating a procedure for identifying financial transactions to optimize a user's balance sheet.

FIG. 11 is a flow diagram illustrating a procedure for automatically optimizing a user's asset accounts, debt accounts, and balance sheet.

FIG. 12 is a table illustrating various information associated with different financial institutions.

FIG. 13 is a table illustrating various customer information related to financial accounts and user preferences.

FIGS. 14-15 illustrate exemplary user interface screens illustrating various account entry fields and account recommendations.

DETAILED DESCRIPTION

The system and methods described herein automatically analyze multiple financial accounts to determine whether the account balances are optimized based on the best available interest rates, the interest rates associated with the multiple financial accounts, and the balances of the multiple financial accounts. After analyzing the accounts, recommendations are provided, if necessary, for adjusting account funds to allow the account holder to earn greater interest in asset accounts and/or pay less interest in debt accounts. Additionally, recommendations may be provided to adjust account funds from one or more asset accounts to one or more debt accounts, or vice versa, if such an adjustment is favorable to the account holder. The systems and methods described herein may operate in a proactive manner, such that the various recommendations are generated without any action or request by the user. The financial management system described herein may regularly analyze a user's accounts and make recommendations, if appropriate, on its own initiative, without any prompting from the user.

As used herein, the terms “account holder”, “customer”, “user”, and “client” are interchangeable. “Account holder” refers to any person having access to an account. A particular account may have multiple account holders (e.g., a joint checking account having husband and wife as account holders or a corporate account identifying several corporate employees as account holders). Various financial account and financial institution examples are provided herein for purposes of explanation. However, it will be appreciated that the system and procedures described herein can be used with any type of asset account and any type of debt account. Example asset accounts include savings accounts, money market accounts, checking accounts (both interest-bearing and non-interest-bearing), certificates of deposit (CDs), mutual funds, bonds, and equities. Example debt accounts include credit card accounts, mortgage accounts, home equity loans, overdraft protection, margin accounts, personal loans, and other types, of loans. Exemplary financial institutions include banks, savings and loans, credit unions, mortgage companies, mutual fund companies, lending companies, and stock brokers.

Various attributes associated with an asset account and/or a debt account are discussed herein. These attributes are used to analyze various accounts and make recommendations that would benefit the account holder. Example attributes include interest rate, loan repayment terms, minimum balance, type of collateral, etc. Although particular examples are discussed herein with reference to interest rates, it will be appreciated that the methods and systems described herein are applicable to any type of attribute.

FIG. 1 illustrates an exemplary network environment 100 in which various servers, computing devices, and financial management systems exchange data across a data communication network. The network environment of FIG. 1 includes multiple financial institution servers 102, 104, and 106 coupled to a data communication network 108, such as the Internet. A market information service server 110 and a financial management system 118 are also coupled to network 108. Additionally, a wireless device 112 and a client computer 114 are coupled to network 108. Wireless device 112 may be a personal digital assistant (PDA), a handheld or portable computer, a cellular phone, a pager, or any other device capable of communicating with other devices via a wireless connection. A financial information provider 116 is coupled between network 108 and client computer 114.

Network 108 may be any type of data communication network using any communication protocol. Further, network 108 may include one or more sub-networks (not shown) which are interconnected with one another.

The communication links shown between the network 108 and the various devices (102-106 and 110-118) shown in FIG. 1 can use any type of communication medium and any communication protocol. For example, one or more of the communication links shown in FIG. 1 may be a wireless link (e.g., a radio frequency (RF) link or a microwave link) or a wired link accessed via a public telephone system or another communication network. Wireless device 112 typically accesses network 108 via a wireless connection to another communication network that is coupled to network 108. Certain devices, such as servers, may be coupled to a local area network (LAN), which is coupled to network 108. Client computer 114 may access network 108 in different ways. First, client computer 114 may directly access network 108, for example, by using a modem to access a public telephone network (e.g., a public switched telephone network (PSTN)) that is coupled to network 108. Alternately, client computer 114 may access financial information provider 116, which establishes a connection to network 108. Financial information provider 116 may act as a “buffer” between network 108 and client computer 114, or may allow commands and data to simply pass-through between the network 108 and the client computer 114.

Each of the financial institution servers 102, 104, and 106 are typically associated with a particular financial institution and store data for that financial institution, such as customer account data. The market information service server 110 may represent one or more services that collect and report information regarding current financial market conditions. For example, a particular market information service may collect information from many financial institutions to generate a report identifying the average interest rates for savings, checking, or other accounts. The report may also identify the highest rates for each type of account and the financial institution offering those rates. Multiple market information service servers 110 may be coupled to network 108, each server providing a different type of market data.

Financial management system 118 performs various account analysis functions to determine whether a user's financial accounts (e.g., both asset accounts and debt accounts) are optimized. These analysis functions are discussed in greater detail below. Wireless device 112 and client computer 114 allow a user to access information via the network 108. For example, the user can access account information from one of the financial institution servers 102, 104, or 106, access current interest rate data from market information service server 110, or send a request for an analysis of the user's financial accounts to financial management system 118. Financial information provider 116 acts as an intermediary between client computer 114 and other devices coupled to network 108. For example, client computer 114 generates a request for data or account analysis and communicates the request to the financial information provider 116. The financial information provider 116 then retrieves the requested data or initiates the requested account analysis on behalf of the user of client computer 114.

FIG. 2 illustrates an example of the interaction between a particular pair of financial institution servers 132 and 134, a market information service server 140, a client computer 136, and a financial management system 138. Client computer 136 is capable of accessing financial institution server 132 via a communication link 142 and accessing financial institution server 134 via a communication link 144. For example, the user of client computer 136 may retrieve account information or interest rate information from one or both of the financial institution servers 132, 134. Client computer 136 is also capable of interacting with financial management system 138 via a communication link 146. The user of client computer 136 may access financial management system 138, for example, to have the system analyze the user's financial accounts.

Financial management system 138 is coupled to the two financial institution servers 132 and 134 via two communication links 148 and 150, respectively. Communication links 148 and 150 allow the financial management system 138 to retrieve information from the financial institution servers 132, 134, and execute transactions on the financial institution servers on behalf of the user of client computer 136. Financial management system 138 is also coupled to market information service server 140 through a communication link 152, which allows the financial management system to retrieve various information regarding market interest rates and other market data. Financial institution servers 132 and 134 are capable of communicating with one another via a communication link 154, which allows the servers to exchange data and other information with one another.

Communication links 142-154 may be dial-up connections and/or connections via one or more networks of the type discussed above with respect to FIG. 1.

FIG. 3 is a block diagram showing pertinent components of a computer 180 in accordance with the invention. A computer such as that shown in FIG. 3 can be used, for example, to perform various financial analysis operations such as accessing and analyzing a user's financial account information to make account recommendations. Computer 180 can also be used to access a web site or other computing facility to access the various financial analysis functions. The computer shown in FIG. 3 can function as a server, a client computer, or a financial management system, of the types discussed herein.

Computer 180 includes at least one processor 182 coupled to a bus 184 that couples together various system components. Bus 184 represents one or more of any of several types of bus structures, such as a memory bus or memory controller, a peripheral bus, and a processor or local bus using any of a variety of bus architectures. A random access memory (RAM) 186 and a read only memory (ROM) 188 are coupled to bus 184. Additionally, a network interface 190 and a removable storage device 192, such as a floppy disk or a CD-ROM, are coupled to bus 184. Network interface 190 provides an interface to a data communication network such as a local area network (LAN) or a wide area network (WAN) for exchanging data with other computers and devices. A disk storage 194, such as a hard disk, is coupled to bus 184 and provides for the non-volatile storage of data (e.g., computer-readable instructions, data structures, program modules and other data used by computer 180). Although computer 180 illustrates a removable storage 192 and a disk storage 194, it will be appreciated that other types of computer-readable media which can store data that is accessible by a computer, such as magnetic cassettes, flash memory cards, digital video disks, and the like, may also be used in the exemplary computer.

Various peripheral interfaces 196 are coupled to bus 184 and provide an interface between the computer 180 and the individual peripheral devices. Exemplary peripheral devices include a display device 198, a keyboard 200, a mouse 202, a modem 204, and a printer 206. Modem 204 can be used to access other computer systems and devices directly or by connecting to a data communication network such as the Internet.

A variety of program modules can be stored on the disk storage 194, removable storage 192, RAM 186, or ROM 188, including an operating system, one or more application programs, and other program modules and program data. A user can enter commands and other information into computer 180 using the keyboard 200, mouse 202, or other input devices (not shown). Other input devices may include a microphone, joystick, game pad, scanner, satellite dish, or the like.

Computer 180 may operate in a network environment using logical connections to other remote computers. The remote computers may be personal computers, servers, routers, or peer devices. In a networked environment, some or all of the program modules executed by computer 180 may be retrieved from another computing device coupled to the network.

Typically, the computer 180 is programmed using instructions stored at different times in the various computer-readable media of the computer. Programs and operating systems are often distributed, for example, on floppy disks or CD-ROMs. The programs are installed from the distribution media into a storage device within the computer 180. When a program is executed, the program is at least partially loaded into the computer's primary electronic memory. As described herein, the invention includes these and other types of computer-readable media when the media contains instructions or programs for implementing the steps described below in conjunction with a processor. The invention also includes the computer itself when programmed according to the procedures and techniques described herein.

For purposes of illustration, programs and other executable program components are illustrated herein as discrete blocks, although it is understood that such programs and components reside at various times in different storage components of the computer, and are executed by the computer's processor. Alternatively, the systems and procedures described herein can be implemented in hardware or a combination of hardware, software, and/or firmware. For example, one or more application specific integrated circuits (ASICs) can be programmed to carry out the systems and procedures described herein.

FIG. 4 is a block diagram showing exemplary components and modules of a financial management system 220. A communication interface 222 allows the financial management system 220 to communicate with other computing systems, such as servers, client computers, and portable computing devices. In one embodiment, communication interface 222 is a network interface to a LAN, which is coupled to another data communication network, such as the Internet.

The financial management system 220 stores customer data 224, such as customer account information, online banking login name and password, and user preferences. Financial management system 220 also stores financial institution data 226 and market information 228. Financial institution data 226 includes, for example, transaction routing data, account offerings, account interest rates, and minimum account balances. Market information 228 includes data such as average interest rates for different types of accounts (both asset accounts and debt accounts), the best available interest rates for each type of account, and the financial institutions offering the best available interest rates.

An asset analysis and recommendation module 230 analyzes various asset accounts to determine whether the accounts are earning the best available interest rates (or close to the best interest rates) and whether the fund allocation among the asset accounts is optimal or close to optimal. If fund adjustments would benefit the account holder, then module 230 makes the appropriate recommendations to the account holder. The asset accounts analyzed may be associated with two or more different financial institutions. A debt analysis and recommendation module 232 analyzes various debt accounts to determine whether the accounts are paying the most competitive (i.e., the lowest) interest rates or close to the best interest rates. Module 232 also determines whether the allocation of funds among the debt accounts is optimal or close to optimal, and makes recommendations, if necessary, to adjust funds in a manner that reduces the overall interest payments. The debt accounts analyzed may be associated with two or more different financial institutions.

A balance sheet analysis and recommendation module 234 analyzes both asset accounts and debt accounts to determine whether the allocation of funds among all of the accounts is optimal or close to optimal. If fund adjustments would benefit the account holder, then the balance sheet analysis and recommendation module 234 makes the appropriate recommendations to the account holder.

A report generator 236 generates various types of reports, such as account activity history, current recommendations to adjust funds among accounts, or a report comparing the current market interest rates to the interest rates of a user's current accounts. A transaction execution module 238 executes financial transactions at the direction of account holders. For example, an account holder may request that the financial management system 220 execute the recommendations generated by one or more of the three analysis and recommendation modules 230, 232, and 234. In this example, transaction execution module 238 identifies the recommendations and executes the financial transactions necessary to implement the recommendations.

FIG. 5 is a block diagram showing exemplary components and modules of asset analysis and recommendation module 230. An asset account information collection module 250 collects information about a user's asset accounts. When a user accesses the financial management system and requests an analysis of the user's asset accounts, the system prompts the user to enter account information for all of the user's asset accounts. The information provided for each account may include the name of the financial institution, the account number, and the login name and password for online access to the account. This information is typically stored by the financial management system to avoid asking the user to re-enter the same information in the future. Based on the information provided by the user, the asset account information collection module 250 is able to access the user's accounts and determine the balance of each account as well as other information such as the interest rate and minimum balance for the account.

After collecting the user's asset account information, the collection module 250 organizes the account information into a common format and communicates the information to an asset analysis and recommendation engine 254 for processing.

A financial institution and market data collection module 256 collects information about particular, financial institutions (e.g., transaction routing information and account offerings) and information about current market interest rates. The information about financial institutions may be retrieved from the financial institutions themselves or from one or more market information services that provide information about various financial institutions. The information relating to current market interest rates is collected from one or more market information services. After collecting the financial institution information and the market data, the collection module 256 communicates the collected information and data to the asset analysis and recommendation engine 254.

A default asset analysis logic 258 defines a default set of logic rules used to analyze a user's asset accounts. These default logic rules are used if the user does not create their own set of logic rules and does not select from one of several sets of alternate asset analysis logic rules 260 and 262. The alternate logic rules 260 and 262 may provide different approaches to asset account analysis (e.g., a conservative approach, a moderate approach, or an aggressive approach). In particular embodiments, at least one of the alternate logic rules 260, 262 is associated with a financial and/or investment celebrity, who defines the particular set of logic rules based on their financial and/or investment expertise.

The particular logic rules selected for each user may be different based on the sets of logic rules chosen by the user. Additionally, the logic rules selected for a particular user may change over time as the financial management system learns more about the user's payment or spending habits. For example, if the user regularly makes a $1000 payment from a particular checking account on the 15th of each month, a rule may be created by the financial management system to ensure that the checking account has at least a $1000 balance on the 14th of each month. If the checking account does not have a sufficient balance, then the financial management system may recommend a fund transfer to raise the balance of the checking account to cover the anticipated $1000 payment on the 15th. This type of user-specific logic rule may be stored with the other user data in the financial management system.

Asset analysis and recommendation engine 254 analyzes the user's asset account information by applying the various asset analysis logic rules to the asset account information. The asset analysis and recommendation engine 254 also considers market data collected by collection module 256 when analyzing the user's asset accounts. After analyzing the user's asset accounts, the asset analysis and recommendation engine 254 generates one or more recommendations to adjust the fund allocation among the asset accounts. The recommendation may also include opening a new asset account (e.g., an account that pays a higher interest rate) and/or closing an existing asset account (e.g., an account that pays a low interest rate). The recommendations and analysis results are output on communication link 264 for use by other modules or components in the financial management system.

FIG. 6 is a block diagram showing exemplary components and modules of debt analysis and recommendation module 232. A debt account information collection module 270 collects information about a user's debt accounts. When a user accesses the financial management system and requests an analysis of the user's debt accounts, the system prompts the user to enter account information for each of the user's debt accounts. The information provided for each account may include the name of the financial institution, the account number, and information necessary to access the account online. This information is typically stored by the financial management system to avoid asking the user to re-enter the same information in the future. Based on the information provided by the user, the debt account collection module 270 accesses the user's debt accounts and determines the balance of each account as well as other information, such as the interest charged and the maximum balance for the account.

After collecting the user's debt account information, the collection module 270 organizes the account information into a common format and communicates the account information to a debt analysis and recommendation engine 274 for processing.

A financial institution and market data collection 276 collects information regarding particular financial institutions and information about current market interest rates. The information relating to financial institutions may be retrieved from the financial institutions themselves or from one or more market information services that provide information about various financial institutions. The information relating to current market interest rates is collected from one or more market information services. After collecting the financial institution information and the market data, the collection module 276 communicates the collected information and data to the debt analysis and recommendation engine 274.

A default debt analysis logic 278 defines a default set of logic rules used to analyze a user's debt accounts. These default logic rules are used if the user does not create their own set of logic rules and does not select from one of the several sets of alternate debt analysis logic 280 and 282. The alternate logic rules 280 and 282 may provide different approaches to debt account analysis, such as a conservative approach, a moderate approach, or an aggressive approach. In a particular embodiment, at least one of the alternate logic rules 280, 282 is associated with a financial and/or investment celebrity, who defines the particular set of logic rules based on their financial and/or investment expertise.

The particular logic rules selected for each user may be different based on the sets of logic rules chosen by the user. Additionally, the logic rules selected for a particular user may change over time as the financial management system learns more about the user's payment or spending habits. For example, if the user has too many expenses (i.e., the current month's expenses exceed the user's typical monthly income), then the logic rules may suggest a short-term loan to cover the expenses, thereby avoiding a situation in which the user has insufficient funds to pay bills as they become due. Additionally, if the loan will only be required for a short period of time, the rules may suggest opening (or taking advantage of an existing) overdraft protection account.

Different debt logic rules may be applied depending on a user's opinions regarding debt. One user might use the majority of available assets to pay down debts, thereby minimizing the user's level of debt. Another user might want to maintain a larger “cushion” of cash and only pay down debts if the available assets exceed a predetermined amount (e.g., $10,000). Debt rules from, for example, a celebrity or well-known financial analyst might recommend setting aside savings at the beginning of the month to “force” the appropriate monthly savings. The remainder of the assets are then used to pay monthly bills and other expenses. Other financial analysts may use different sets of logic rules to define the analysis and handling of asset accounts and debt accounts.

Debt analysis and recommendation engine 274 analyzes the user's debt account information by applying the various debt analysis logic rules to the debt account information. The debt analysis and recommendation engine 274 also considers market data collected by collection module 276 when analyzing the user's debt accounts. After analyzing the user's debt accounts, the debt analysis and recommendation engine 274 generates one or more recommendations to adjust the fund allocation among the debt accounts. The recommendation may also include opening a new debt account (e.g., an account with a lower interest rate) and/or closing an existing debt account (e.g., an account with a high interest rate). The recommendations and analysis results are output on communication link 284 for use by other modules or components in the financial management system.

FIG. 7 is a block diagram showing exemplary components and modules of balance sheet analysis and recommendation module 234. An account information collection module 290 collects information about a user's asset accounts and debt accounts. When a user accesses the financial management system and requests an analysis of the user's balance sheet, the system prompts the user to enter account information for each of the user's asset accounts and debt accounts. The information provided for each account may include the name of the financial institution, the account number, and information necessary to access the account online. This information is typically stored by the financial management system to avoid asking the user to re-enter the same information in the future. Based on the information provided by the user, the account collection module 290 accesses the user's debt accounts and determines the balance of each account as well as other information, such as the interest charged or earned, and the maximum balance or credit limit associated with the account.

After collecting the user's asset and debt account information, the collection module 290 organizes the account information into a common format and communicates the account information to a balance sheet analysis and recommendation engine 294 for processing.

A financial institution and market data collection 296 collects information regarding particular financial institutions and information about current market interest rates for both asset accounts and debt accounts. The information relating to financial institutions may be retrieved from the financial institutions themselves or from one or more market information services that provide information about various financial institutions. The information relating to current market interest rates is collected from one or more market information services. After collecting the financial institution information and the market data, the collection module 296 communicates the collected information and data to the balance sheet analysis and recommendation engine 294.

A default balance sheet analysis logic 298 defines a default set of logic rules used to analyze a user's balance sheet. These default logic rules are used if the user does not create their own set of logic rules and does not select from one of the several sets of alternate balance sheet analysis logic 300 and 302. The alternate logic rules 300 and 302 may provide different approaches to debt account analysis, such as a conservative approach, a moderate approach, or an aggressive approach. In a particular embodiment, at least one of the alternate logic rules 300, 302 is associated with a financial and/or investment celebrity, who defines the particular set of logic rules based on their financial and/or investment expertise.

The particular logic rules selected for each user may be different based on the sets of logic rules chosen by the user. Additionally, the logic rules selected for a particular user may change over time as the financial management system learns more about the user's payment or spending habits. For example, if the user has funds earning a low interest rate in a savings account and carries a balance on a credit card with a high interest rate, the logic rules may suggest applying some or all of the funds in the savings account to pay off all or a portion of the balance on the credit card.

Different balance sheet logic rules may be applied depending on a user's opinions regarding assets and debts. One user might prefer to use the majority of available assets to pay down debts, thereby minimizing the user's level of debt. Another user might want to maintain a larger “cushion” of cash and only pay down debts if the available assets exceed a predetermined amount (e.g., $5,000).

Balance sheet analysis and recommendation engine 294 analyzes the user's balance sheet information by applying the various balance sheet analysis logic rules to the balance sheet information. The balance sheet analysis and recommendation engine 294 also considers financial institution and market data collected by collection module 296 when analyzing the user's balance sheet. After analyzing the user's balance sheet, the balance sheet analysis and recommendation engine 294 generates one or more recommendations to adjust the fund allocation among the user's asset accounts and debt accounts. The recommendation may also include opening one or more new accounts and/or closing one or more existing accounts. The recommendations and analysis results are output on communication link 304 for use by other modules or components in the financial management system.

FIG. 8 is a flow diagram illustrating a procedure for identifying financial transactions to optimize a user's asset account balances. The procedure begins by analyzing the user's asset accounts (block 320). The procedure then determines the best available asset accounts (block 322), for example, by using market interest rate information from a market information service. Next, the procedure determines whether there are better accounts for the user's assets (block 324). These “better” accounts may include asset accounts that earn higher interest rates than the user's current asset accounts.

If the procedure identifies better accounts for the user's assets, then the procedure selects the best alternative account (or accounts) and makes a recommendation that the user open the alternative account (block 326). If the procedure does not identify any better accounts for the user's assets, then the procedure continues to block 328, where the procedure determines whether the assets in the user's accounts should be adjusted. If the user's asset accounts should be adjusted, then the procedure identifies the best adjustment of the user's asset accounts and makes asset adjustment recommendations to the user (block 330). Finally, the user is provided the opportunity to automatically execute any of the recommendations, such as opening one or more new asset accounts and/or moving funds between asset accounts (block 332). If the user chooses to have the recommendations executed automatically, the financial management system executes the necessary financial transactions to implement the system's recommendations. The procedure described above with respect to FIG. 8 may be implemented, for example, by asset analysis and recommendation module 230.

FIG. 9 is a flow diagram illustrating a procedure for identifying financial transactions to optimize a user's debt account balances. The procedure analyzes the user's debt accounts (block 350) and determines the best available debt accounts (block 352). The best available debt accounts are determined, for example, by using market interest rate information from one or more market information services. Next, the procedure determines whether there are better accounts for the user's debts (block 354). These “better” accounts may include debt accounts that charge lower interest rates than the user's current debt accounts.

If better accounts are identified for the user's debts, then the procedure selects the best alternative account (or accounts) and makes a recommendation that the user open the alternative account (block 356). If the procedure does not identify any better accounts for the user's debts, then the procedure continues to block 358, to determine whether the debts in the user's accounts should be adjusted. If the user's debt accounts should be adjusted, then the procedure identifies the best adjustment of the user's debt accounts and makes asset adjustment recommendations to the user (block 360). Finally, the user is provided the opportunity to automatically execute any of the recommendations, such as opening one or more new debt accounts and/or moving funds between debt accounts (block 362). If the user chooses to have the recommendations executed automatically, the financial management system executes the necessary financial transactions to implement the system's recommendations. The procedure described above with respect to FIG. 9 can be implemented, for example, by debt analysis and recommendation module 232.

FIG. 10 is a flow diagram illustrating a procedure for identifying financial transactions to optimize a user's balance sheet. The procedure analyzes the user's balance sheet (block 370) and determines whether there is a better distribution of assets and debts across the user's balance sheet (block 372). For example, a “better distribution” of assets and debts may result in greater interest earned by the user or less interest paid by the user. If there is a better distribution of assets and debts across the user's balance sheet, then the procedure identifies the optimal allocation of assets and debts and makes recommendations to the user (block 374).

If the procedure does not identify any better distribution of assets and debts, then the procedure continues to block 376, to determine whether the amounts in the user's asset and debt accounts should be adjusted. If the user's accounts should be adjusted, then the procedure identifies the best adjustment of the user's asset and debt accounts and makes adjustment recommendations to the user (block 378). Finally, the user is provided the opportunity to automatically execute any of the recommendations (block 380), such as moving funds between accounts to maximize interest earned or minimize interest paid. If the user chooses to have the recommendations executed automatically, the financial management system executes the necessary financial transactions to implement the system's recommendations. The procedure described above with respect to FIG. 10 can be implemented, for example, by balance sheet analysis and recommendation module 234.

A user may choose to have the financial management system 220 (FIG. 4) analyze and make recommendations regarding the user's asset accounts, while ignoring the user's debt accounts. FIG. 8 illustrates an example procedure for this type of analysis and recommendation. Additionally, the user may select specific asset accounts to ignore during the analysis procedure. For example, the user may have a savings account for a special purpose. Even though the savings account may earn a below-average interest rate, the user does not want funds transferred into or out of that savings account. In this example, the user would instruct the financial management system to ignore that particular savings account.

The user may also choose to have the financial management system analyze and make recommendations regarding the user's debt accounts, while ignoring the user's asset accounts. FIG. 9 illustrates an example procedure for this type of analysis and recommendation. Additionally, the user may select specific debt accounts to ignore during the analysis procedure. For example, the user may want to pay-off and close a particular debt account even though the account has a favorable interest rate. In this example, the user would instruct the financial management system to ignore that particular debt account when performing its analysis.

The user can also choose to have the financial management system analyze and make recommendations regarding both the user's asset accounts and debt accounts (i.e., analyze the user's balance sheet). FIG. 10 illustrates an example procedure for this type of analysis and recommendation. Additionally, the user may select specific asset accounts or debt accounts to ignore during the analysis procedure. Thus, the user has the option of selecting the types of accounts to consider, as well as specific accounts to consider or ignore, when the financial management system performs its analysis and makes recommendations.

FIG. 11 is a flow diagram illustrating a procedure for automatically optimizing a user's asset accounts, debt accounts, and balance sheet. Initially, the procedure determines the best adjustment of the user's asset accounts (block 400). The best adjustment of the user's asset accounts may include opening a new account, closing an existing account, and/or transferring funds between accounts (new accounts or existing accounts). If the user's asset accounts are already optimized, or almost optimized, the procedure determines that no adjustment of asset accounts is necessary.

Next, the procedure determines the best adjustment of the user's debt accounts (block 402) and the best adjustment of the user's balance sheet (block 404). The best adjustment of the user's debt accounts and the user's balance sheet may include opening one or more new accounts, closing one or more existing accounts, and/or transferring funds between accounts (new accounts or existing accounts). If the user's debt accounts are already optimized, or almost optimized, the procedure determines that no adjustment of debt accounts is necessary. Similarly, if the user's balance sheet is already optimized, or almost optimized, then the procedure determines that no adjustment of asset accounts or debt accounts is necessary.

The various logic rules discussed above, which are used by the financial management system to determine whether funds should be adjusted between accounts, may define how to determine whether accounts are “almost optimized.” Typical factors that may be considered in determining whether accounts are “almost optimized” include: the savings (extra interest earned or less interest paid) that would result from an adjustment of funds, the difference in interest rates, the time required to implement the adjustment of funds, fees associated with the adjustment of funds, and the “risk” associated with the adjustment. The “risk” may be overdrawing an account by leaving too little funds to cover unexpected expenses (or expenses that are greater than expected).

For example, if a particular adjustment of funds would result in an increase in interest earnings of three cents per week, most logic rules will consider this situation “almost optimized.” In this situation, the financial management system will not recommend the adjustment of funds because the additional interest is insignificant.

After the procedure has determined the best adjustment of the user's accounts (blocks 400, 402, and 404), the procedure identifies the financial institutions involved in the adjustment of the user's accounts (block 406). The financial institutions are determined from the information entered by the user when identifying the user's accounts to the financial management system. Next, the procedure contacts the appropriate financial institutions and/or payment networks and executes the financial transfers necessary to implement the recommended adjustments to the user's accounts (block 408). A payment network may be, for example, the Federal Automated Clearing House (ACH), a debit network, a credit network, the federal wire system, or an ATM network. The financial management system is able to automatically access the user's accounts by using the login name and password for the account, which is provided by the user when identifying the user's accounts to the financial management system.

After executing the financial transactions necessary to implement the recommended adjustments to the user's accounts, the a report is generated for the user that identifies the financial transfers executed (block 410). Finally, the user's account information is updated in the financial management system such that the system has accurate account balance information for all of the user's accounts (block 412).

The procedure described above with respect to FIG. 11 can be modified based on the user's preferences with respect to the types of accounts to be analyzed. For example, if the user selects only asset accounts for analysis, then the functions associated with blocks 402 and 404 of the procedure are not performed.

FIG. 12 shows a table 430 illustrating various information associated with different financial institutions. The information contained in table 430 may be obtained from the financial institution itself or from one or more market information services. The information contained in table 430 is periodically updated by comparing the information stored in the table against the current financial institution information.

The first column of table 430 identifies the name of the financial institution and the second column identifies the American Banking Association (ABA) number and routing number. The third column indicates an Internet uniform resource locator (URL) associated with the financial institution. The fourth column of table 430 identifies the various account offerings from a particular financial institution. In this example, Bank of America offers a savings account, two types of checking accounts (interest bearing and non-interest bearing), a three month certificate of deposit (CD), a home equity loan, a credit card account, and overdraft protection for a checking account. The next column indicates the type of account (e.g., an asset account or a debt account).

The sixth column of table 430 indicates the current interest rate associated with each account. In the case of an asset account, the interest rate is the interest paid to a customer based on the balance in the account. In the case of a debt account, the interest rate is the interest charged to a customer based on the outstanding balance of the debt. The last column in table 430 indicates the minimum balance associated with each account. In this example, the debt accounts do not have a minimum balance. However, a debt account may have a maximum balance (e.g., the maximum value that can be loaned). Although not shown in FIG. 12, additional account information may be stored in table 430, such as monthly service charges, per-check charges, service charges for ATM transactions, or service charges if the minimum balance is not maintained.

FIG. 13 shows a table 440 illustrating various customer information related to financial accounts and user preferences. Most information contained in table 440 is obtained from the user during an account setup procedure. The current account balance information is typically retrieved from the financial institution by the financial management system. The account balance information is periodically updated by retrieving current information from the financial institution.

The first column of table 440 identifies the customer name (the table contains customer information for multiple customers accessing the same financial management system). The second column identifies a financial institution and the third column identifies an account number as well as an online username and password associated with the account number. The username and password are used to access the account to perform online banking functions such as executing fund transfers or retrieving current account balances. The fourth column of table 440 identifies the accounts that the customer has with the financial institution (i.e., active accounts). For example, John Smith has five active accounts with Bank of America (savings, interest checking, home equity, credit card, and overdraft protection), one active account with Charles Schwab (money market account), and one active account with Rainbow Credit Union (savings account). The next column in table 440 indicates the current account balance for each active account. The last column indicates user preferences. The user preferences are determined by the user based on the manner in which the user wants information displayed, the manner in which accounts should be analyzed, and the types of recommendations the user desires. Additionally, the user preferences may specify certain minimum balances or other requirements for all accounts or for specific accounts. For example, the user preferences for John Smith specify that a minimum balance of $1500 should be maintained in the interest checking account. These user preferences are typically incorporated into the logic rules, discussed above, which are used to determine when and how to adjust funds between accounts.

Other types of user preferences include a maximum number of transactions per month in a particular account (e.g., some money market accounts set limits on the number of transactions in a particular month). By setting a user preference (or a logic rule) to limit the number of monthly transactions, the financial management system will not recommend (or attempt to execute) too many transactions in a particular month. A user may also set a preference that requires the financial management system to predict expenses for the next seven days (e.g., based on historical expenses during similar periods) and maintain a “buffer” in the account equal to the predicted expenses for the next seven days. Further, a user may set a preference indicating that funds should not be adjusted unless the adjustment results in a savings of at least five dollars per day.

FIGS. 14-15 illustrate exemplary user interface screens illustrating various account entry fields and account recommendations. FIG. 14 illustrates an example screen 500 generated by a web browser or other application that allows a user to enter account information and preferences. Each entry identifies an institution 502 associated with the account and an account number 504. The user may select whether the financial management system has access to move funds into the account, out of the account, or both, by selecting the appropriate check boxes 506. The user may also set a maximum amount that can be withdrawn from the account at a particular time or during a particular time period by entering the amount in field 508. The credit routing number for the account is entered in field 510 and the debit routing number for the account is entered in field 512.

Although not shown in FIG. 14, other fields may be provided in the user interface to allow the user to enter additional preferences or information, such as interest rate, minimum balance the user wants maintained, etc. Certain account information (such as interest rate and routing numbers) may be obtained from the bank directly, thereby minimizing the information required to be entered by the user.

FIG. 15 illustrates another example screen 550 generated by a web browser or other application that allows a user to review recommendations generated by the financial management system. In the example of FIG. 15, one recommendation 552 is shown—to transfer funds from the Wells Fargo Checking account into the Chase Savings account. A recommended amount to transfer 554 has also been identified. If the recommendation is executed, the projected savings 556 over the next six months is $26. The reasoning or analysis supporting the recommendation and the projected savings is provided at 558. The user can execute the recommendation by activating the “Execute” button 560 on the screen. After activating the “Execute” button, the financial management system automatically performs the necessary steps to transfer the recommended funds between the two accounts.

In an alternate embodiment, the user is given the option to modify the amount to be transferred between the two accounts. For example, the user may only want to transfer $500 instead of the recommended $877. In this situation, the financial management system is still able to automatically perform the steps necessary to transfer $500 between the two accounts.

Thus, a system and method has been described that analyzes multiple user accounts to determine whether those accounts are optimized, or close to optimized, based on the best available market interest rates, interest rates associated with the user's accounts, and the user's account balances. Recommendations are generated, if necessary, to adjust account funds if the user could earn greater interest by adjusting asset accounts and/or pay less interest by adjusting debt accounts. The recommendations may include adjusting funds from an asset account to a debt account or vice versa.

Although the description above uses language that is specific to structural features and/or methodological acts, it is to be understood that the invention defined in the appended claims is not limited to the specific features or acts described. Rather, the specific features and acts are disclosed as exemplary forms of implementing the invention. 

1. A method comprising: a processor-based financial management system receiving identification and access information for a plurality of financial accounts from an account holder, wherein the identification information is entered by the account holder in a client computer and transmitted to the financial management system via a publicly available communications network according to standard protocols accessible to any user of the publicly available network, wherein the financial management system is coupled to a plurality of financial institutions via the publicly available network, and wherein identification and access information comprises account information, one or more online banking login names, and one or more passwords; the financial management system identifying a first account balance associated with a first account of the plurality of financial accounts; the financial management system further identifying a second account balance associated with a second account of the plurality of financial accounts, wherein the first account and the second account are associated with one or more of the plurality of financial institutions; obtaining account information from the first and second accounts using the identification and access information provided by the account holder, wherein obtaining comprises the financial management system accessing each of the associated financial institutions separately via the publicly available network; the financial management system comparing the first account balance to a particular value; if the first account balance exceeds the particular value, the financial management system recommending a transfer of funds from the first account to the second account, wherein the first account and the second account have a common account holder, and wherein the recommendation to transfer funds identifies an amount to be transferred equal to the value by which the first account balance exceeds the particular value, wherein recommending comprises generating a report for the account holder; if the first account balance is below the particular value, the financial management system recommending a transfer of funds from the second account to the first account, wherein recommending comprises generating a report for the account holder that is viewable on a computer via the publicly available network; and the financial management system automatically executing one or more financial transactions on behalf of the account holder, comprising transferring funds to implement the recommendation, wherein the one or more financial transactions involves one or more of the plurality of the financial institutions transacting with the financial management system.
 2. A method as recited in claim 1 wherein obtaining account information and comparing the first account balance to a particular value is performed automatically at periodic intervals.
 3. A method as recited in claim 1 wherein comparing the first account balance to a particular value includes applying at least one rule associated with the first account.
 4. A method as recited in claim 1 wherein the first account is a checking account and the second account is a savings account.
 5. A method as recited in claim 1 wherein the second account pays a higher interest rate than the first account.
 6. A method as recited in claim 1 further comprising if the first account balance is below the particular value, the financial management system recommending a transfer of funds from the second account to the first account in an amount equal to the value by which the first account balance is below the particular value.
 7. A method as recited in claim 1 wherein the first account is a checking account and the second account is an investment account.
 8. A method as recited in claim 1 wherein the second account offers a better return than the first account.
 9. A method as recited in claim 1 wherein the particular value is a minimum balance associated with the first account.
 10. A method as recited in claim 1 wherein the particular value is a minimum required balance based on historical data.
 11. A method as recited in claim 1 further comprising permitting the account holder to change the amount to be transferred from the first account to the second account.
 12. A tangible computer-readable medium having stored thereon a computer program that is executable by a processor to perform a financial management method comprising: a processor-based financial management system receiving identification and access information for a plurality of financial accounts from an account holder, wherein the identification information is entered by the account holder in a client computer and transmitted to the financial management system via a publicly available communications network according to standard protocols accessible to any user of the publicly available network, wherein the financial management system is coupled to a plurality of financial institutions via the publicly available network, and wherein identification and access information comprises account information, one or more online banking login names, and one or more passwords; the financial management system identifying a first account balance associated with a first account of the plurality of financial accounts; the financial management system further identifying a second account balance associated with a second account of the plurality of financial accounts, wherein the first account and the second account are associated with one or more of the plurality of financial institutions; obtaining account information from the first and second accounts using the identification and access information provided by the account holder, wherein obtaining comprises the financial management system accessing each of the associated financial institutions separately via the publicly available network; the financial management system comparing the first account balance to a particular value; if the first account balance exceeds the particular value, the financial management system recommending a transfer of funds from the first account to the second account, wherein the first account and the second account have a common account holder, and wherein the recommendation to transfer funds identifies an amount to be transferred equal to the value by which the first account balance exceeds the particular value, wherein recommending comprises generating a report for the account holder; if the first account balance is below the particular value, the financial management system recommending a transfer of funds from the second account to the first account, wherein recommending comprises generating a report for the account holder that is viewable on a computer via the publicly available network; and the financial management system automatically executing one or more financial transactions on behalf of the account holder, comprising transferring funds to implement the recommendation, wherein the one or more financial transactions involves one or more of the plurality of the financial institutions transacting with the financial management system.
 13. A computer-readable medium as recited in claim 12 wherein obtaining account information and comparing the first account balance to a particular value is performed automatically at periodic intervals.
 14. A computer-readable medium as recited in claim 12 wherein comparing the first account balance to a particular value includes applying at least one rule associated with the first account.
 15. A computer-readable medium as recited in claim 12 wherein the first account is a checking account and the second account is a savings account.
 16. A computer-readable medium as recited in claim 12 wherein the second account pays a higher interest rate than the first account.
 17. A computer-readable medium as recited in claim 12, the method further comprising if the first account balance is below the particular value, the financial management system recommending a transfer of funds from the second account to the first account in an amount equal to the value by which the first account balance is below the particular value.
 18. A computer-readable medium as recited in claim 12 wherein the first account is a checking account and the second account is an investment account.
 19. A computer-readable medium as recited in claim 12 wherein the second account offers a better return than the first account.
 20. A computer-readable medium as recited in claim 12 wherein the particular value is a minimum balance associated with the first account.
 21. A computer-readable medium as recited in claim 12 wherein the particular value is a minimum required balance based on historical data.
 22. A computer-readable medium as recited in claim 12, the method further comprising permitting the account holder to change the amount to be transferred from the first account to the second account. 